package com.joven.shelltest.utils.testfactory;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * @Author wzj
 * @Date 2023-09-18 09:03
 **/
@Getter
@AllArgsConstructor
public enum GatewayEnum {

    // handlerId, 拦截者名称，全限定类名，preHandlerId，nextHandlerId
    API_HANDLER(new GatewayEntity(1, "api接口限流", "com.joven.shelltest.utils.testfactory.ApiLimitGatewayHandler", null, 2)),
    BLACKLIST_HANDLER(new GatewayEntity(2, "黑名单拦截", "com.joven.shelltest.utils.testfactory.BlacklistGatewayHandler", 1, 3)),
    SESSION_HANDLER(new GatewayEntity(3, "用户会话拦截", "com.joven.shelltest.utils.testfactory.SessionGatewayHandler", 2, null)),
    ;

    final GatewayEntity gatewayEntity;
}
